//strstr()函数，字符串查找函数 char * strstr ( const char * str1, const char * str2);
//函数返回字符串str2在字符串str1中第⼀次出现的位置。
//并且字符串的⽐较匹配不包含 \0 字符，以 \0 作为结束标志。

////原函数的使用
//#include<stdio.h>
//#include<string.h>
//int main()
//{
//    char arr1[]="Hello Word!";
//    char arr2[]="llo";
//    char arr3[]="o";
//    printf("%s\n",strstr(arr1,arr2));
//    printf("%s\n",strstr(arr1,arr3));//返回第一次遇到的地址
//    return 0;
//}


////模拟实现my_strstr()函数
//#include<stdio.h>
//#include<assert.h>
//char* my_strstr(const char* str1,const char* str2)
//{
//    //检测是否有效
//    assert(str1&&str2); 
//    if(*str2=='\0')
//    {
//        return (char*)str1;
//    }
//    //为了不让返回字符串的arr1的首地址变化，就先用指针存起来。
//    const  char* s1=NULL;
//    const  char* s2=NULL;
//    const  char* cur=str1;//记录从哪个位置和str2中第一个字符匹配成功的地址
//    //然后从str1中开始遍历比较
//    while(*cur) 
//    {
//        s1=cur;
//        s2=str2;
//        //在字符串中有相同的字符，所以我们在找到和str2中第一个字符相匹配的时候就把这个地址存起来。
//        while(*s1!='\0'&&*s2!='\0'&&*s1==*s2)
//        {
//            s1++;
//            s2++;
//        }
//        //在这如果str2为\0就说明比较完了，找到了即返回str1中和str2中第一个字符匹配的地址
//        if(*s2=='\0')
//        {
//            return (char*)cur;
//        }
//        //调整往后移
//        cur++;
//    }
//    return NULL;//没找到
//}

//int main()
//{
//    char arr1[]="Hello Word!";
//    char arr2[]="llo";
//    char* ret=my_strstr(arr1,arr2);
//    if(ret==NULL)
//    {
//         printf("没找到啊！\n");
//    }
//    else
//    {
//         printf("%s\n",ret);
//    }
//     return 0;
//}


//#include <stdio.h>
//#include <stdlib.h>
//int main()
//{
//    printf("Hello World!\n");
//    printf("你好世界！\n");
    
//    return 0;
//}


